package app.beit.fintrack.service.convert;

import java.util.ArrayList;
import java.util.List;

import app.beit.fintrack.bean.summary.SummaryTrackDetailsDataBean;
import app.beit.fintrack.entity.summary.SummaryTrackDetailsData;
import app.beit.fintrack.utils.StringUtils;

public class SummaryTrackDetailsDataConvert {

	/**
	 * Convert Entity To Bean
	 * 
	 * @param entity
	 * @return SummaryTrackDetailsDataBean
	 */
	public static SummaryTrackDetailsDataBean entityToBean(final SummaryTrackDetailsData entity) {
		final SummaryTrackDetailsDataBean bean = new SummaryTrackDetailsDataBean();

		bean.setId(entity.getId());
		bean.setAdmidDate(entity.getAdmidDate());
		bean.setAdmidTime(StringUtils.toTimeFormat(entity.getAdmidTime()));
		bean.setAn(StringUtils.nullToEmpty(entity.getAn()));
		bean.setChargeRule(StringUtils.nullToZero(entity.getChargeRule()));
		bean.setCodeDWAE(StringUtils.nullToEmpty(entity.getCodeDWAE()));
		bean.setCodeDWDMIS(StringUtils.nullToEmpty(entity.getCodeDWDMIS()));
		bean.setCodeDWHC(StringUtils.nullToEmpty(entity.getCodeDWHC()));
		bean.setCodeDWINST(StringUtils.nullToEmpty(entity.getCodeDWINST()));
		bean.setCodeDWIP(StringUtils.nullToEmpty(entity.getCodeDWIP()));
		bean.setCodeDWIPCSLG(StringUtils.nullToEmpty(entity.getCodeDWIPCSLG()));
		bean.setCodeDWOPCSLG(StringUtils.nullToEmpty(entity.getCodeDWOPCSLG()));
		bean.setCodeId(StringUtils.nullToEmpty(entity.getCodeId()));
		bean.setCodeINSTCSLG(StringUtils.nullToEmpty(entity.getCodeINSTCSLG()));
		bean.setCodeOTCSLG(StringUtils.nullToEmpty(entity.getCodeOTCSLG()));
		bean.setCodePACSLG(StringUtils.nullToEmpty(entity.getCodePACSLG()));
		bean.setCompensation(StringUtils.nullToZero(entity.getCompensation()));
		bean.setDischarge(StringUtils.nullToZero(entity.getDischarge()));
		bean.setDischargeDate(entity.getDischargeDate());
		bean.setDischargeTime(StringUtils.toTimeFormat(entity.getDischargeTime()));
		bean.setEclaimNo(StringUtils.nullToEmpty(entity.getEclaimNo()));
		bean.setFullname(StringUtils.nullToEmpty(entity.getFullname()));
		bean.setHn(StringUtils.nullToEmpty(entity.getHn()));
		bean.setHospitalCode(StringUtils.nullToEmpty(entity.getHospitalCode()));
		bean.setHospitalName(StringUtils.nullToEmpty(entity.getHospitalName()));
		bean.setOldCodeDWAE(StringUtils.nullToEmpty(entity.getOldCodeDWAE()));
		bean.setOldCodeDWDMIS(StringUtils.nullToEmpty(entity.getOldCodeDWDMIS()));
		bean.setOldCodeDWHC(StringUtils.nullToEmpty(entity.getOldCodeDWHC()));
		bean.setOldCodeDWINST(StringUtils.nullToEmpty(entity.getOldCodeDWINST()));
		bean.setOldCodeDWINSTCSLG(StringUtils.nullToEmpty(entity.getOldCodeDWINSTCSLG()));
		bean.setOldCodeDWIP(StringUtils.nullToEmpty(entity.getOldCodeDWIP()));
		bean.setOldCodeDWIPCSLG(StringUtils.nullToEmpty(entity.getOldCodeDWIPCSLG()));
		bean.setOldCodeDWOPCSLG(StringUtils.nullToEmpty(entity.getOldCodeDWOPCSLG()));
		bean.setOldCodeDWOTCSLG(StringUtils.nullToEmpty(entity.getOldCodeDWOTCSLG()));
		bean.setOldCodeDWPACSLG(StringUtils.nullToEmpty(entity.getOldCodeDWPACSLG()));
		bean.setOldCompensation(StringUtils.nullToZero(entity.getOldCompensation()));
		bean.setOldDischarge(StringUtils.nullToZero(entity.getOldDischarge()));
		bean.setOldSumsAE(StringUtils.nullToZero(entity.getOldSumsAE()));
		bean.setOldSumsDMIS(StringUtils.nullToZero(entity.getOldSumsDMIS()));
		bean.setOldSumsDRUG(StringUtils.nullToZero(entity.getOldSumsDRUG()));
		bean.setOldSumsDRUGCS(StringUtils.nullToZero(entity.getOldSumsDRUGCS()));
		bean.setOldSumsHC(StringUtils.nullToZero(entity.getOldSumsHC()));
		bean.setOldSumsINST(StringUtils.nullToZero(entity.getOldSumsINST()));
		bean.setOldSumsINSTCS(StringUtils.nullToZero(entity.getOldSumsINSTCS()));
		bean.setOldSumsIP(StringUtils.nullToZero(entity.getOldSumsIP()));
		bean.setOldSumsIPCS(StringUtils.nullToZero(entity.getOldSumsIPCS()));
		bean.setOldSumsOPCS(StringUtils.nullToZero(entity.getOldSumsOPCS()));
		bean.setOldSumsOTCS(StringUtils.nullToZero(entity.getOldSumsOTCS()));
		bean.setOldSumsPACS(StringUtils.nullToZero(entity.getOldSumsPACS()));
		bean.setOrf(StringUtils.nullToEmpty(entity.getOrf()));
		bean.setOrfHMain(StringUtils.nullToZero(entity.getOrfHMain()));
		bean.setOrfNHSO(StringUtils.nullToZero(entity.getOrfNHSO()));
		bean.setPersonType(StringUtils.nullToEmpty(entity.getPersonType()));
		bean.setPid(StringUtils.nullToEmpty(entity.getPid()));
		bean.setRepNo(StringUtils.nullToEmpty(entity.getRepNo()));
		bean.setSalaryAmount(StringUtils.nullToZero(entity.getSalaryAmount()));
		bean.setSalaryPercent(StringUtils.nullToEmpty(entity.getSalaryPercent()));
		bean.setStatus(StringUtils.nullToEmpty(entity.getStatus()));
		bean.setSumsAE(StringUtils.nullToZero(entity.getSumsAE()));
		bean.setSumsDMIS(StringUtils.nullToZero(entity.getSumsDMIS()));
		bean.setSumsDRUG(StringUtils.nullToZero(entity.getSumsDRUG()));
		bean.setSumsDRUGCS(StringUtils.nullToZero(entity.getSumsDRUGCS()));
		bean.setSumsHC(StringUtils.nullToZero(entity.getSumsHC()));
		bean.setSumsINST(StringUtils.nullToZero(entity.getSumsINST()));
		bean.setSumsINSTCS(StringUtils.nullToZero(entity.getSumsINSTCS()));
		bean.setSumsIP(StringUtils.nullToZero(entity.getSumsIP()));
		bean.setSumsIPCS(StringUtils.nullToZero(entity.getSumsIPCS()));
		bean.setSumsOPCS(StringUtils.nullToZero(entity.getSumsOPCS()));
		bean.setSumsOTCS(StringUtils.nullToZero(entity.getSumsOTCS()));
		bean.setSumsPACS(StringUtils.nullToZero(entity.getSumsPACS()));
		bean.setTranId(StringUtils.nullToEmpty(entity.getTranId()));
		
		return bean;
	}

	/**
	 * Convert Bean to Entity
	 * 
	 * @param bean
	 * @return SummaryTrackDetailsData
	 */
	public static SummaryTrackDetailsData beanToEntity(final SummaryTrackDetailsDataBean bean){
		final SummaryTrackDetailsData entity = new SummaryTrackDetailsData();

		return entity;
	}

	/**
	 * Convert List Entity to List Bean
	 * 
	 * @param entities
	 * @return List SummaryTrackDetailsDataBean
	 */
	public static List<SummaryTrackDetailsDataBean> entityToBean(final List<SummaryTrackDetailsData> entities){
		final List<SummaryTrackDetailsDataBean> beans = new ArrayList<SummaryTrackDetailsDataBean>();

		for (final SummaryTrackDetailsData entity : entities) {
			beans.add(SummaryTrackDetailsDataConvert.entityToBean(entity));
		}

		return beans;
	}

	/**
	 * Convert List Bean to List Entity
	 * 
	 * @param beans
	 * @return List SummaryTrackDetailsData
	 */
	public static List<SummaryTrackDetailsData> beanToEntity(final List<SummaryTrackDetailsDataBean> beans){
		final List<SummaryTrackDetailsData> entities = new ArrayList<SummaryTrackDetailsData>();

		for (final SummaryTrackDetailsDataBean bean : beans) {
			entities.add(SummaryTrackDetailsDataConvert.beanToEntity(bean));
		}

		return entities;
	}

}
